#include <tracker.h>




void Tracker::transform_All_Model_MESHES()          {   sequence.transform_All_Model_MESHES();          }
void Tracker::transform_All_Model_SKELETONS()       {   sequence.transform_All_Model_SKELETONS();       }
void Tracker::calculate_All_Model_ROTATION_AXES()   {   sequence.calculate_All_Model_ROTATION_AXES();   }

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

int  Tracker::currentFrameNumberGET()
{
    return  sequence.currentFrameNumber;
}


void Tracker::currentFrameNumberSET( int inValue, bool shouldTransform, bool shouldTryLoadFrameRGB ) // shouldTryLoadFrameRGB = true is *NOT* the only condition !!!
{
    sequence.currentFrameNumber = inValue;

    if (currentFrameNumberGET() >=0 ) // in order to alow **sequence.currentFrameNumber = -1** for frame extractor ;)
    {
        if (shouldTransform == true)
        {
            transform_All_Model_MESHES();
            transform_All_Model_SKELETONS();
            calculate_All_Model_ROTATION_AXES();
        }

        if (shouldTryLoadFrameRGB == true)
        {
            sequence.videoSequence.loadCurrentFrame( sequence.cameraSet.currentCameraID, currentFrameNumberGET() );
        }
    }
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

void Tracker::incrFrameNumber()            // to usual +1 !!!!!!!!!!!!!!!
{
        sequence.updateFrameNumber();
        starting_FrameTracker_INI = currentFrameNumberGET();
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

void Tracker::SET_StartingFrame_INI( int inValueSTART )
{
        starting_FrameTracker_INI = inValueSTART;
}

